Lina

Tutoriel - LINA et la communication - 03/2022

3. Lina et les systèmes communicants

3.1 Fonctions de communication sur LINA

LINA est capable de communiquer avec tous les appareils sous les conditions suivantes :

  • Les appareils utilisent les protocoles standards LINA
  • Les appareils sont sur des réseaux raccordés au serveur LINA
  • Le configurateur Lina dispose des informations nécessaires : adresse IP, port, variables, identification si sécurisée.

Lors de la configuration des communications sur LINA, certains champs sont communs à tous les protocoles. Ils sont traités dans ce chapitre. D’autres champs vont varier en fonction du protocole de communication, ils seront traités dans les chapitres suivants.
La déclaration sur le référentiel permettant de communiquer avec d’autres appareils va dépendre du protocole utilisé. Il y a deux familles pour les déclarations : un serveur pour un device ou un serveur pour plusieurs devices. Dans tous les cas c’est le serveur qui permet de définir le protocole de communication utilisé.

3.1.1 Un serveur pour un device

Cette déclaration est utilisée sur les protocoles suivants : Modbus, OPC UA, OPC DA, IO Link, MQTT et SQL.

Figure 45 : Un serveur pour un device

3.1.2 Un serveur pour plusieurs devices

Cette déclaration est utilisée sur les protocoles suivants : Expression, Interne, Fichier, Siemens et SNMP.

Figure 46 : Un serveur pour plusieurs devices PLC

Pour cette déclaration, il est possible d’utiliser un serveur pour plusieurs devices utilisant le même protocole de communication. Il cependant possible de créer plusieurs serveurs avec le même protocole pour organiser les déclarations.

3.2 Protocoles standards sur LINA

Expression : Le type expression permet de créer des mnémoniques qui seront le résultat d’une opération ou d’une condition avec d’autres mnémoniques. Il est possible d’utiliser des mnémoniques de différents serveurs. Attention : l’exécution de l’opération ne s’effectue pas à chaque changement de valeur des autres mnémoniques.
Fichier : Le type de serveur va permettre de lire des fichiers. Il va être utile pour des datalogger ou pour la récupération de données d’autres logiciels. Les formats de fichier disponible : csv, Excel, Json, xml et txt.
Interne : Les mnémoniques interne permettront de créer des variables internes à LINA. Les variables sont utilisées pour des tests ou connecter certaines fonctions entre elles.
IO Link : Ce protocole développé par IFM est un protocole terrain. LINA est donc capable de communiquer directement avec les modules IFM sans utiliser de passerelle.
Modbus Generic : C’est le protocole de communication créé par Schneider Electric. Il est aujourd’hui un des protocoles les plus utilisé.
MQTT : C’est un protocole de messagerie basé sur TCP/IP. Il est principalement utilisé pour la communication entre sites distants.
OPC DA : LINA est capable de communiquer en OPC DA. C’est un protocole obsolète qu’il est préférable d’éviter pour les nouvelles installations.
OPC UA : l’OPC UA est le protocole le plus sécurisé dans les protocoles standards utilisés par LINA. Il nécessite cependant beaucoup d’information pour le paramétrage. L’OPC UA a aussi l’avantage d’avoir un navigateur intégré qui permet de retrouver les variables automates sans passer par les logiciels propriétaires.
Siemens : LINA peut communiquer avec les automates Siemens avec leur protocole propriétaire Profinet. C’est le type de serveur le plus simple à renseigner sur LINA.
SNMP : Ce protocole permet de créer une supervision réseau. C’est un protocole couramment utilisé par les périphériques en informatique : switch, routeur, serveur, caméra.
SQL : Ce type de serveur permet à LINA de récupérer des données dans d’autres bases de données via des requêtes SQL.

3.3 Les serveurs

3.3.1 La page référentiel Serveur

Pour commencer, vous pouvez ajouter les serveurs à partir du référentiel.

Figure 47 : Référentiel Serveur

  1. Liste des serveurs
  2. Information du serveur sélectionné dans la liste
  3. Créer, modifier, supprimer des serveurs
  4. Exporter la liste des serveurs
  5. Affiche la liste des serveurs OPC DA disponible
  6. Boutons spécifiques OPC UA : cf. chapitre sur l’OPC UA

3.3.2 Onglet Serveur

Figure 48 : Pop d'édition d'un serveur

Lorsqu’un serveur est en cours d’édition, il y a :

  1. Une zone blanche identique à tous les serveurs ;
  2. une zone grise qui varie en fonction du type de serveur.

Figure 49 : Serveur type Siemens

  1. Nom : Nom du serveur ;
  2. Type : Protocole de communication utilisé.

La zone grise sera traitée dans les chapitres suivants.
Note : Les serveur de type Siemens, SNMP, Expression, Fichier et Interne n’ont pas besoin d’être configuré. Vous pouvez utiliser le même serveur pour plusieurs devices. Pour ces types, la zone grise est vide.

3.3.3 Onglet Devices associés

Figure 50 : Onglet Devices associés

L’onglet Devices associés liste tous les devices utilisant ce serveur.

3.4 Configurer un device – généralité

3.4.1 La page référentiel Devices

Figure 51 : Device et surveillance

Pour configurer un device :

  1. Allez dans Référentiel > Device/Mnémonique > Device et surveillance.

Un device est un système communiquant : automate, serveur, périphériques, compteur, IoT, … Il est configuré avec un des protocoles standards LINA.

Figure 52 : Référentiel devices

  1. Liste des devices ;
  2. Aperçu du device sélectionné ;
  3. Créer, modifier, supprimer, dupliquer ou importer des devices ;
  4. Extraire la liste des devices ;
  5. Forcer la mise à l’heure du device sélectionné. L’onglet mise à l’heure du device doit être renseigné et le programme automate doit le gérer ;
  6. Ce bouton permet d’accéder la surveillance du serveur sélectionné ;
  7. Affiche les serveurs OPC DA disponible ;
  8. Ces boutons spécifiques à l’OPC UA permettent d’ouvrir le dossier des certificats ou d’en générer un pour ce poste client.

3.4.2 Onglet Général

Figure 53 : Onglet Général

  1. La zone blanche de l’onglet général est commune à tous les types de serveur ;
  2. La zone grise sera spécifique.

Sur la zone blanche, nous retrouvons les champs suivants :
Champ Nom : Le nom du device. Attention, si le serveur est Applicom il faut que le nom du device dans Lina corresponde exactement au nom du device défini dans Applicom.
Champ Inhibé : Rend le device inactif dans Lina. Il désactivera toutes les fonctions liées à cette automate.
Champ Serveur : Sélectionner le serveur dans la liste des serveurs déclarés précédemment. Utiliser le bouton « … » pour ouvrir le référentiel des serveurs.
Champ Format des adresses : Le format d’adresses dépend du type de serveur.
Informations complémentaires :
N° de groupe : permet de créer des groupes de device. Les devices avec le même N° de groupe sont traités comme un seul par la communication, celle-ci va lire les devices en série au sein de groupe. Cela permet dans le cas de plusieurs devices derrière une passerelle de ne pas la saturer.
Temps de cycle mini : par défaut 1000 ms, c’est la valeur de temps minimum pour démarrer un cycle de communication dans LINA avec le device. Il n’y a pas de temps maximum, le service LINA communication peut terminer son cycle après cette valeur théorique. Si le temps de communication est supérieur à ce paramètre, un nouveau cycle recommence sans délais.

Figure 54 : Chronogramme temps de cycle

3.4.3 Onglet Surveillance

La surveillance permet de surveiller les pertes de communication entre LINA et l’automate. Des alarmes peuvent être affecté pour d’avoir une traçabilité et avertir les utilisateurs.
Il y a 4 modes de contrôles :

  1. Écriture simple : LINA écrit sur un mot et détectera une erreur d’écriture s’il n’y parvient pas. Niveau de sécurité faible ;
  2. Lecture simple : LINA lit un mot et détectera une erreur de lecture s’il n’y parvient pas. Niveau de sécurité faible ;
  3. Écriture Relecture : LINA écrit sur un mot et lit sur un autre et s’assure qu’ils sont identiques. Niveau de sécurité élevé. Ce mode nécessite une modification du programme automate ;
  4. Évolution mot API : LINA s’assure que le mot de lecture varie. Niveau de sécurité moyen. Ce mode nécessite une modification du programme automate.

Figure 55 : Onglet surveillance

Mode de contrôle : Sélectionner le mode de contrôle que vous souhaitez utiliser.
Mnémo à écrire : La surveillance va écrire sur ce mnémonique pour les modes Écriture simple et Écriture Relecture.
Mnémo à lire : Mnémonique que la surveillance va lire pour les modes Lecture simple, Écriture Relecture et Évolution mot API.
Alarme associée : Sélectionner ou déclarer une alarme en cliquant sur les trois petits points qui sera affectée à cette surveillance.
Si votre alarme n’est pas dans le référentiel des alarmes, il faut en créer une de la façon suivante :

Figure 56 : Pop-up de sélection d'une alarme

Clic Nouveau.

Figure 57 : Onglet définition alarme

Une fois le pop-up du nouveau mnémonique ouvert :

  1. Nommez l’alarme ;
  2. Cochez la case Alarme calculée ☑

Figure 58 : Prm d'une alarme de surveillance

  1. Allez sur l’onglet Alarme calculée.
  2. Sélectionnez « Perte de Com API ».
  3. Enregistrez l’alarme.
  4. Sélectionnez l’alarme dans la liste des alarmes.

3.4.4 Onglet Mise à l’heure

La mise à l’heure permet de synchroniser l’heure entre LINA et l’automate. Cette fonction est utile si LINA envoie des dates et des heures de démarrage ou d’arrêt à l’automate.
Tous les types de serveur ne sont pas compatible avec cette fonctionnalité et elle nécessite une adaptation du programme automate.

Figure 59 : Mise à l'heure

À partir de : Indiqué l’heure de départ pour la synchronisation (minuit par défaut)
Fréquence : C’est la fréquence de synchronisation (en heure)
Pour mettre en place la mise à l’heure il faut créer les mnémoniques suivants :

  • Mnémo top écriture : indique à l’automate que LINA souhaite écrire lorsqu’il passe à 1. L’automate repasse le mnémo à 0 lorsqu’il a reçu.

Les mnémos suivants permettent d’envoyer les données actuelles LINA à l’automate : l’année sera écrite dans le mnémo année.

  • Mnémo année, mois, jour ;
  • Mnémo heure, minute, seconde ;
  • Mnémo n° jour, saison, quantième.

3.4.5 Onglet Mnémoniques associés

L’onglet mnémoniques associées permet de référencer tous les mnémoniques en lien avec l’automate sélectionné. Un double clic sur le mnémonique ouvre le pop-up d’édition.

Figure 60 : Onglet Mnémoniques associés

Nous allons voir dans le chapitre suivant comment déclarer des mnémoniques.

3.5 Configurer un mnémonique – généralité

Figure 61 : icône Mnémonique

Pour déclarer un mnémonique, allez dans référentiel > Devices/mnémoniques > Mnémoniques

3.5.1 La page référentiel mnémoniques

Figure 62 : Référentiel mnémonique

Le référentiel mnémonique se présente de la façon suivante :

  1. Le bandeau spécifique aux mnémoniques ;
  2. L’arborescence mnémonique ;
  3. La liste des mnémoniques ;
  4. Les informations concernant le mnémonique sélectionné.

Figure 63 : Légende couleur mnémonique

3.5.2 Le bandeau mnémonique

Figure 64 : Bandeau référentiel mnémonique

Figure 65 : Pop-up liste des mnémoniques inutilisés

  1. Les boutons d’édition permettent de créer, modifier, supprimer, dupliquer et importer/exporter des mnémoniques. Ces boutons nécessitent de redémarrer la communication, une fois les modifications enregistrées ;
  2. Les boutons d’impression permettent d’exporter la liste des mnémoniques.
  3. Le bouton « création fonction » va permettre de créer des fonctions primaires à partir du mnémonique sélectionné dans la liste.⚠ Attention, les fonctions seront rangées à la racine de l’arborescence physique ;
  4. Lorsqu’un mnémonique est sélectionné, il est possible de lire et écrire directement. Un message d’erreur [bad] apparait s’il y a un problème de communication ;
  5. Le bouton « mnémoniques inutilisés » affiche une liste des mnémoniques qui ne sont pas associés à des fonctions. Cette action prend du temps en fonction de la taille du nombre de mnémonique. Le bouton « mnémonique en doublon » permet de retrouver les mnémoniques avec un device et une adresse identique ;
  6. Ces boutons permettent d’agir directement sur les conditions de validité des mnémoniques sélectionnés. Les conditions de validités sont expliquées dans le chapitre onglet Condition de validité.

3.5.3 L’arborescence mnémonique

Figure 66 : Arborescence mnémonique

Les mnémoniques ont une arborescence propre, différente des arborescences physique et thématique.
On commence donc par créer l’arborescence mnémonique. On pourra ensuite ranger les mnémo dans les dossiers par un glisser-déposer.
Conseil : pour réaliser votre arborescence mnémonique, créer 1 dossier par automate. Le nom du dossier correspond au nom de l’automate. Créer ensuite des sous-dossiers pour chaque équipement que l’automate pilote.

3.5.4 Onglet mnémonique

On clique sur Nouveau ou Éditer un mnémonique. Dans l’onglet mnémonique, il faut déclarer plusieurs champs :

Figure 67 : Éditer Mnémonique

Champ Nom : Le nom que l’on veut donner au mnémonique.

Champ Type mnémo : Le protocole de communication.

Figure 68 : Type mnémo

Champ Device : L’automate sur lequel on doit lire ou écrire le mnémonique.

3.5.5 Onglet Référencement

L’onglet référencement pourra vous être utile pour avoir la liste de toutes les fonctions (courbes, compteurs, horodatages…) qui utilisent ce mnémo.

Figure 69 : Onglet Référencement

3.5.6 Onglet conditions de validité

Figure 70 : Onglet conditions de validité

L’onglet Conditions de validité permet d’afficher des rapports d’erreurs :

  1. si les valeurs lues sur le mnémonique ne respectent pas les conditions saisies ;
    • La valeur va être contrôlée en fonction de la fréquence d’acquisition saisie ;
  2. Afficher des rapports d’erreurs ;
  3. Des indicateurs s’affichent en fonction des valeurs lues.

3.5.7 Onglet Historique changement valeur

L’onglet historique des changements de valeur affiche chaque changement de valeur en respectant la fréquence d’acquisition définit dans l’onglet conditions de validité.

Figure 71 : Historique des changements de valeur

Cet historique est à utiliser pour les dépannages et les installations, ce n’est pas une fonction courante comme les courbes, les compteurs. Il va augmenter considérablement le volume de la base de données sans possibilité de synthétiser ou de purger automatiquement.